home *** CD-ROM | disk | FTP | other *** search
- -- Part of SmallEiffel -- Read DISCLAIMER file -- Copyright (C)
- -- Dominique COLNET and Suzanne COLLIN -- colnet@loria.fr
- --
- class TEST_MANIFEST_ARRAY
-
- creation {ANY}
- make
-
- feature {ANY}
-
- array_boolean: ARRAY[BOOLEAN];
- array_integer: ARRAY[INTEGER];
- array_animal: ARRAY[ANIMAL];
- array_quadruped: ARRAY[QUADRUPED];
- array_real: ARRAY[REAL];
- array_double: ARRAY[DOUBLE];
- array_any: ARRAY[ANY];
- array_character: ARRAY[CHARACTER];
-
- make is
- local
- cat: CAT;
- dog: DOG;
- do
- array_integer := <<1,2,3>>;
- is_true(array_integer.fast_index_of(2) = 2);
-
- array_boolean := <<true, false>>;
- is_true(1 = array_boolean.index_of(true));
- is_true(1 = array_boolean.fast_index_of(true));
- is_true(2 = array_boolean.index_of(false));
- is_true(2 = array_boolean.fast_index_of(false));
-
- is_true(equal(<<1,2,3>>,<<1,2,3>>));
-
- is_true(equal(<<'a','b','c'>>,<<'a','b','c'>>));
-
- array_character := <<'a','b','c'>>;
- is_true(array_character.item(1) = 'a');
-
- !!array_character.make(1,1);
- array_character.put('z',1);
- is_true(array_character.item(1) = 'z');
-
-
- is_true(equal(<<1.5,2.5,3.>>,<<1.5,2.5,3.>>));
-
- array_integer := <<1>>;
- array_real := <<1.>>;
- is_true(array_real.first = array_integer.last);
-
- !!cat;
- array_any := <<cat,cat>>;
- array_animal := <<cat,cat>>;
- is_true(equal(array_any,array_animal));
-
- array_any.put(Void,1);
- array_animal.put(Void,1);
- is_true(equal(array_any,array_animal));
- array_animal.put(cat,1);
- is_true(not equal(array_any,array_animal));
-
- !!dog;
- array_any.put(dog,1);
- array_animal.put(dog,1);
- is_true(equal(array_any,array_animal));
-
- !!cat;
- !!dog;
- array_any := <<cat,dog>>;
- array_animal := <<cat,dog>>;
- is_true(equal(array_any,array_animal));
-
- array_quadruped := <<cat,dog>>;
- is_true(equal(array_animal,array_quadruped));
- is_true(equal(array_any,array_quadruped));
-
- array_double := <<d1,d2,d3>>;
- is_true(equal(array_double,<<d1,d2,d3>>));
- end;
-
- d1: DOUBLE is 1.5;
- d2: DOUBLE is 1.7;
- d3: DOUBLE is 1.8;
-
- is_true(b: BOOLEAN) is
- do
- cpt := cpt + 1;
- if not b then
- std_output.put_string("TEST_MANIFEST_ARRAY: ERROR Test # ");
- std_output.put_integer(cpt);
- std_output.put_string("%N");
- else
- -- std_output.put_string("Yes%N");
- end;
- end;
-
- cpt: INTEGER;
-
- end -- TEST_MANIFEST_ARRAY
-